←Select platform

ApplyModalityLookupTableCommand Constructor(DicomLookupTableDescriptor,Int16[],ModalityLookupTableCommandFlags)

Summary

Initializes a new ApplyModalityLookupTableCommand with explicit parameters.

Syntax

C#
VB
Java
Objective-C
WinRT C#
C++
- (instancetype)initWithLookupTableDescriptor:(LTDicomLookupTableDescriptor *)lookupTableDescriptor 
                                  lookupTable:(const unsigned short *)lookupTable 
                            lookupTableLength:(NSUInteger)lookupTableLength 
                                        flags:(LTModalityLookupTableCommandFlags)flags 
public ApplyModalityLookupTableCommand( 
   DicomLookupTableDescriptor lookupTableDescriptor,  
   int[] lookupTable,  
   int flags 
) 
function ApplyModalityLookupTableCommand(  
   lookupTableDescriptor , 
   lookupTable , 
   flags  
) 

Parameters

lookupTableDescriptor
Structure describing the LookupTable. The following members are used:

Value Meaning
FirstStoredPixelValueMapped Indicates the first index whose remapped value is stored in the LookupTable. All pixels that are less than this value will be remapped to LookupTable[0].

lookupTable
Array of short values that contains the lookup table. Its length determines the number of entries. All the pixels that are greater than FirstStoredPixelValueMapped + (LookupTable->Length) will be set to the last entry in the LookupTable (LookupTable[LookupTable->Length - 1]).

flags
Flags that determine the behavior of this method. These flags can be OR-ed together.

Example

Run the ApplyModalityLookupTableCommand on an image.

C#
VB
WinRT C#
Silverlight C#
Silverlight VB
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing.Core 
 
    
Public Sub ApplyModalityLookupTableConstructorExample() 
   Dim codecs As New RasterCodecs() 
   codecs.ThrowExceptionsOnInvalidImages = True 
   Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE2.dcm")) 
 
   ' Prepare the command 
   Dim i As Integer 
   Dim pLookupTable() As Short 
   ReDim pLookupTable(65535) 
   Dim LookupTableDescriptor As DicomLookupTableDescriptor = New DicomLookupTableDescriptor(0, 16) 
   ' set a LookupTable which reduces the intensity of each pixel to half 
   For i = 0 To 65535 
      pLookupTable(i) = CType(i / 2, Int16) 
   Next 
   ' apply the LookupTable 
   Dim command As ApplyModalityLookupTableCommand = New ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None) 
   command.Run(leadImage) 
 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Core; 
 
       
public void ApplyModalityLookupTableConstructorExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE2.dcm")); 
 
   // Prepare the command 
   int                i;  
   short[] pLookupTable = new short[65536];  
   DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor(0, 16); 
 
   // set a LookupTable which reduces the intensity of each pixel to half 
   for(i = 0; i < 65536; i++) 
      pLookupTable[i] = (short)(i / 2); 
 
   // apply the LookupTable 
   ApplyModalityLookupTableCommand command = new ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None); 
   command.Run(image); 
 
} 
 
static class LEAD_VARS 
{ 
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
} 
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Core; 
 
       
public async Task ApplyModalityLookupTableConstructorExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
   // Load the image 
   string srcFileName = @"Assets\Image2.dcm"; 
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName); 
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile)); 
 
   // Prepare the command 
   int                i;  
   short[] pLookupTable = new short[65536];  
   DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor(0, 16); 
 
   // set a LookupTable which reduces the intensity of each pixel to half 
   for(i = 0; i < 65536; i++) 
      pLookupTable[i] = (short)(i / 2); 
 
   // apply the LookupTable 
   ApplyModalityLookupTableCommand command = new ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None); 
   command.Run(image); 
 
} 
using Leadtools; 
using Leadtools.Examples; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Core; 
 
public void ApplyModalityLookupTableConstructorExample(RasterImage image, Stream outStream) 
{ 
   // Prepare the command 
   int i; 
   short[] pLookupTable = new short[65536]; 
   DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor(0, 16); 
   // set a LookupTable which reduces the intensity of each pixel to half 
   for (i = 0; i < 65536; i++) 
      pLookupTable[i] = (short)(i / 2); 
 
   // apply the LookupTable 
   ApplyModalityLookupTableCommand command = new ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None); 
   command.Run(image); 
 
   // Save result image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24); 
   image.Dispose(); 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing.Core 
 
Public Sub ApplyModalityLookupTableConstructorExample(ByVal image As RasterImage, ByVal outStream As Stream) 
   ' Prepare the command 
   Dim i As Integer 
   Dim pLookupTable As Short() = New Short(65535){} 
   Dim LookupTableDescriptor As DicomLookupTableDescriptor = New DicomLookupTableDescriptor(0, 16) 
   ' set a LookupTable which reduces the intensity of each pixel to half 
   For i = 0 To 65535 
      pLookupTable(i) = CShort(i / 2) 
   Next i 
 
   ' apply the LookupTable 
   Dim command As ApplyModalityLookupTableCommand = New ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None) 
   command.Run(image) 
 
   ' Save result image 
   Dim codecs As RasterCodecs = New RasterCodecs() 
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24) 
   image.Dispose() 
End Sub 

Requirements

Target Platforms

Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
Leadtools.ImageProcessing.Core Assembly
Click or drag to resize